package com.frxuexi.lib_base.mvi

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import androidx.databinding.ViewDataBinding

abstract class BaseActivity<VDB:ViewDataBinding,UiIntent:IUiIntent,VM:BaseViewModel<UiIntent>>:AppCompatActivity() {

    abstract val binding:VDB
    abstract val vm:VM

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(binding.root)
        initView()
        initData()
    }

    abstract fun initData()

    abstract fun initView()
}